#include <iostream>
#include<vector>
#include<string>
using namespace std;

int main()
{
		cout << "-1";
	int length = 0;
	cin >> length;
	string s1, s2;
	cin >> s1 >> s2;
	vector<string> str;
	for (int i = 0; i < length; i++)
	{
		cin >> str[i];
	}
	if (length <= 1)
	{
	}
	int flag = 0;
	int ret=length+1;
	for (int i = 0; i < length; i++)
	{
		for (int j = i; j < length; j++)
		{
			if (str[i] == s1 && str[j] == s2)
			{
				flag = j - i;
				if (ret > flag)
				{
					ret = flag;
				}
			}
		}
	}
	if (ret == length + 1)
	{
		cout << "-1";
	}
	else
	{
		cout << ret;
	}
	return 0;
}


//int main()
//{
//	int Lenth = 0;
//	cin >> Lenth;
//	vector<int> v;
//	v.resize(Lenth);
//	for (int i = 0; i < Lenth; i++)
//	{
//		cin >> v[i];
//	}
//	if (Lenth <=3)
//	{
//		cout << min(v[0]+v[2], v[1]);
//		return 0;
//	}
//	int sum = 0;
//	int j = 0;
//	while (j < Lenth - 1)
//	{
//		if (v[j] < v[j + 1])
//		{
//			sum += v[j];
//			j += 1;
//		}
//		else
//		{
//			sum += v[j + 1];
//			j += 2;
//		}
//	}
//	cout << sum;
//	return 0;
//}

//int main() {
//    float N = 0;
//    char method;
//    cin >> N >> method;
//    int extre = 0;
//    if (method == 'y')
//    {
//        extre = 5;
//    }
//    if (N <= 1.0)
//    {
//        cout << 20 + extre;
//    }
//    else
//    {   
//        double sum = N - 1;
//        if (sum == 0)
//        {
//            cout << 20 + (int)sum + extre;
//        }
//        else
//        {
//            cout << 20 + extre + (int)sum+1;
//        }
//    }
//    return 0;
//}